home *** CD-ROM | disk | FTP | other *** search
/ BBS in a Box 3 / BBS in a box - Trilogy III.iso / Files / System7 tools / Frontier / Frontier SDK 2.1 / Toolkits / Applet Toolkit / appletundo.h < prev    next >
Encoding:
C/C++ Source or Header  |  1992-10-11  |  1.3 KB  |  96 lines  |  [TEXT/KAHL]

  1.  
  2. /*© Copyright 1988-1992 UserLand Software, Inc.  All Rights Reserved.*/
  3.  
  4.  
  5. #define undoinclude
  6.  
  7.  
  8. #ifndef appletdefsinclude
  9.  
  10.     #include "appletdefs.h"
  11.     
  12. #endif
  13.  
  14.  
  15.  
  16. typedef struct tystack {
  17.  
  18.     short topstack;
  19.  
  20.     short basesize;
  21.  
  22.     short elemsize;
  23.  
  24.     byte stack [];
  25.     } tystack, *ptrstack, **hdlstack;
  26.  
  27.  
  28. typedef boolean (*undocallback) (Handle, boolean);
  29.  
  30.  
  31. typedef struct tyundorecord {
  32.     
  33.     undocallback undoroutine;
  34.     
  35.     Handle hundodata;
  36.     
  37.     boolean flactionstep; /*is this step an action record?*/
  38.     } tyundorecord;
  39.  
  40.  
  41. typedef struct tyactionrecord {
  42.     
  43.     long ixaction;
  44.     
  45.     long globaldata;
  46.     
  47.     boolean flaction; /*always true for actionrecords*/
  48.     } tyactionrecord;
  49.  
  50.  
  51. typedef struct tyundostack {
  52.  
  53.     short topundo;
  54.     
  55.     short basesize;
  56.     
  57.     short elemsize;
  58.     
  59.     short ixaction;
  60.     
  61.     long globaldata;
  62.     
  63.     tyundorecord undostep [];
  64.     } tyundostack, *ptrundostack, **hdlundostack;
  65.  
  66.  
  67. extern hdlundostack undostack;
  68.  
  69. extern hdlundostack redostack;
  70.  
  71.  
  72. boolean pushundostep (undocallback, Handle);
  73.  
  74. boolean pushundoaction (short);
  75.  
  76. boolean popundoaction (void);
  77.  
  78. boolean undolastaction (boolean);
  79.  
  80. boolean redolastaction (boolean);
  81.  
  82. boolean getundoaction (short *);
  83.  
  84. boolean getredoaction (short *);
  85.  
  86. void killundo (void);
  87.  
  88. boolean newundostack (hdlundostack *);
  89.  
  90. boolean disposeundostack (hdlundostack);
  91.  
  92. void initundo (void);
  93.  
  94.  
  95.  
  96.